package fem2d;

import fem2.AbstractStructuralStaticDemo;
import fem2.Element;
import fem2.MaterialModel;
import fem2.MeshPart;
import fem2.element.BBarStructuralElement;
import fem2.element.StructuralElement;

/**
 * slope analysis with bbar element and StVenantKrirchoff material
 * 
 * @author hbui
 * 
 */
public class SlopeStabilityBBar extends SlopeStability {

	public SlopeStabilityBBar() {
		// meshFileName = "hyplas-mesh.msh"; // 8-node quadrilateral mesh //bad
		// result
		// meshFileName = "mesh1.msh"; // 4-node quadrilateral mesh
		// meshFileName = "mesh2.msh"; // 6-node triangle mesh //good result
		// meshFileName = "mesh3.msh"; // 3-node triangle mesh
		meshFileName = "abaqus-mesh-bbar.msh"; // 8-node quadrilateral mesh
		// good result with bbar element
		// meshFileName = "abaqus-q4-mesh-bbar.msh"; // 4-node quadrilateral
		// mesh
		// //good result
		// meshFileName = "mesh2-bbar.msh"; // 6-node triangle mesh //bad result
		// meshFileName = "mesh4-bbar.msh"; // 6-node triangle mesh //bad result
	}

	@Override
	public Element createElement(MeshPart mp, MaterialModel mm) {
		StructuralElement e = new BBarStructuralElement(mp, mm);
		return e;
	}

	public static void main(String[] args) {
		AbstractStructuralStaticDemo demo = new SlopeStabilityBBar();

		demo.run();
	}
}
